#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>

int gval=0;

int main()
{
    printf("please Enter# ");
    scanf("%d", &gval);


    printf("gval: %d\n", gval);


    printf("I am a process, pid: %d, ppid: %d\n", getpid(), getppid());
    pid_t id = fork();
    //父进程
    if(id > 0)
    {
       while(1)
       {
           printf("我是父进程, pid: %d, ppid:%d, ret id: %d, gval: %d\n", getpid(), getppid(), id, gval);
           gval+=10;
           sleep(1);
       }
    }
    else if(id == 0)
    {
       while(1)
       {
           printf("我是子进程, pid: %d, ppid:%d, ret id: %d, gval: %d\n", getpid(), getppid(), id, gval);
           gval++;
           sleep(1);
       }
    }
    (void)id;
    printf("I am a 分支! pid: %d, ppid: %d\n", getpid(), getppid());
    sleep(1);
}